package com.wangp.procurement.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.wangp.procurement.po.GoodsDO;
import com.wangp.procurement.po.ProcurementManagementDO;
import com.wangp.procurement.vo.GoodsVO;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 第一行简要描述.
 *
 * @author WangPing2
 *     <p>createDate 2024-11-17</p>
 **/
@Mapper
public interface GoodsMapper extends BaseMapper<GoodsDO> {

    /**
     * 采购管理---新增
     * @param goodsDOList
     * @return 新增数据
     */
    void insertBatchGoods(List<GoodsDO> goodsDOList);

    /**
     * 采购管理---根据id 查询管理对应的货物
     * @param procurementManagementId
     * @return UpsertProcurementManagementDTO
     */
    List<GoodsDO> findByProcurementManagementId(@Param("procurementManagementId")Integer procurementManagementId);
    /**
     * 根据id修改管理信息和对应的货物信息
     * 删除原来的货物信息
     * @param id
     */
    Integer deleteGoods(Integer id);

    /* 采购管理---修改    方法二 比较
     *  执行修改操作
     * */
    void executeUpdate(List<GoodsDO> updateGoodList);

    // 查询采购管理的货物信息 返回List<GoodsDO>
    List<GoodsDO> selectGoodsByProcurementManagementId(Integer id);

    //批量修改
    void updateBatch(@Param("list")List<GoodsDO> goodsToModify);
    //批量删除
    void deleteBatch(@Param("list")List<GoodsDO> goodsToDelete);



}
